// 消息接口
export interface Message {
    content: string // 消息内容
    role: 'user' | 'assistant' // 消息角色
    timestamp: Date // 消息时间
}

// 文本组接口
export interface TextGroup {
    centroid: number[] // 文本组中心点
    chunks: {
        text: string // 文本内容
        vector: number[] // 向量
        metadata: any // 元数据
    }[] // 文本组
}

// 聊天接口
export interface Chat {
    id: string // 聊天ID
    title: string // 聊天标题
    messages: Message[] // 聊天消息
    timestamp: Date // 聊天时间
    fileContext?: {
        name: string // 文件名
        type: string // 文件类型
        size: string // 文件大小
        content: string // 文件内容
    }
    // 向量
    vectorStore?: {
        groups: TextGroup[] // 文本组
        texts: string[] // 文本
        metadata: any[] // 元数据
    }
}

// 设置接口
export interface Settings {
    model: string // 模型
    temperature: number // 温度
    maxLength: number // 最大长度
    topP: number // topP
    topK: number // topK
    repeatPenalty: number // 重复惩罚
    baseUrl: string // 基础URL
}

// 添加模型接口定义
export interface OllamaModel {
    name: string // 模型名称
    modified_at: string // 修改时间
    size: number // 大小
}

// 文件信息接口
export interface FileInfo {
    name: string // 文件名
    type: string // 文件类型
    size: string | number // 文件大小
}